其他
每天学习一点R:6.因子向量
因子向量
因子向量相当于统计学中的分类变量,分为有序和无序两种。
因子向量的创建
factor
factor(x, levels = sort(unique(x), na.last = TRUE),labels = levels, exclude = NA, ordered = is.ordered(x))
其中x是数据
levels是因子水平向量
labels是因子的标签向量
exclude表示需要从向量中剔除的值
order为因子的排序
col <- c("B", "B", "R", "Y", "B", "Y", "Y", "R", "Y")
col
[1] "B" "B" "R" "Y" "B" "Y" "Y" "R" "Y"
#创建一个向量
col1 <- factor(col)
col1
[1] B B R Y B Y Y R Y
Levels: B R Y
#将向量转换为因子向量
col1 <- factor(col, levels = c("B", "R", "Y"), labels = c("Blue", "Red", "Yellow"))
col1
[1] Blue Blue Red Yellow Blue Yellow
[7] Yellow Red Yellow
Levels: Blue Red Yellow
#修改因子的名称
gl
gl(k,n,length,labels)
k是水平数(或类别数)
n是每个水平重复的次数
length用来指定产生数据的个数
labels用来指定每个水平因子的名字
gl(2,4)[1] 1 1 1 1 2 2 2 2
Levels: 1 2
#直接创建一个因子向量
gl(2, 4, length=15)[1] 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2
Levels: 1 2
#指定因子向量的长度
gl(2, 4, label=c("Male", "Female"))[1] Male Male Male Male Female Female Female Female Female
Levels: Male Female
#定义因子的名称